Skip to content

Issue/13 port ping pong to dsf api v2#50

Open
jaboehri wants to merge 68 commits into
developfrom
issue/13_port_ping_pong_to_dsf_api_v2
Open

Issue/13 port ping pong to dsf api v2#50
jaboehri wants to merge 68 commits into
developfrom
issue/13_port_ping_pong_to_dsf_api_v2

Conversation

@jaboehri

@jaboehri jaboehri commented Jul 7, 2026

Copy link
Copy Markdown
Collaborator

Closes #13, #48

jaboehri added 30 commits June 23, 2026 14:44
…ymentListener and FhirWebserviceClient is now DsfClient
…f the ExecutionListener interface provides the ProcessPluginApi instance in the notify method
- interface instead of superclass -> no constructor needed
- Error handling method replaced by error handler implementation
- Provide TaskSender instead of overriding sendTask method
- interface instead of superclass -> no constructor needed
- Error handling method replaced by error handler implementation
- Provide TaskSender instead of overriding sendTask method
- interface instead of superclass -> no constructor needed
- Error handling method replaced by error handler implementation
- doExecute renamed to execute
- interface instead of superclass -> no constructor needed
- getAdditionalInputParameters now return list
- override getBusinessKeyStrategy to always send a new business key instead of setting it manually
- interface instead of superclass -> no constructor needed
- no longer subclass of AbstractService as the process should fail if there is an exception in this service
… each service task implementation by an error handler class.
- interface instead of superclass -> no constructor needed
- Error handling moved to overridden getErrorHandler method
- Convert exception to error boundary event and just return the boundary event in the error boundary event handler to cause the engine to move on with the error boundary event flow
- interface instead of superclass -> no constructor needed
- Error handling moved to overridden getErrorHandler method
- Convert exception to error boundary event and just return the boundary event in the error boundary event handler to cause the engine to move on with the error boundary event flow
- interface instead of superclass -> no constructor needed
- doExecute now named execute
- interface instead of superclass -> no constructor needed
- doExecute now named execute
- interface instead of superclass -> no constructor needed
- doExecute now named execute
- interface instead of superclass -> no constructor needed
- doExecute now named execute
- no more variables.removeVariable() -> instead set variable value to null and make sure checks in BPMN expressions don't break e.g. if they rely on execution.hasVariable()
- interface instead of superclass -> no constructor needed
- Error handling moved to overridden getErrorHandler method
- Reintroduce spring web dependency as SelectPingTargets uses UriComponents and UriComponentsBuilder
- interface instead of superclass -> no constructor needed
- Error handling moved to overridden getErrorHandler method
- doExecute renamed to execute
- interface instead of superclass -> no api in constructor needed
- doExecute renamed to execute
- interface instead of superclass -> no api in constructor needed
- doExecute renamed to execute
- interface instead of superclass -> no api in constructor needed
- doExecute renamed to execute
- interface instead of superclass -> no api in constructor needed
- doExecute renamed to execute
- interface instead of superclass -> no api in constructor needed
- doExecute renamed to execute
- interface instead of superclass -> no api in constructor needed
- doExecute renamed to execute
- interface instead of superclass -> no api in constructor needed
- doExecute renamed to execute
- interface instead of superclass -> no api in constructor needed
- doExecute renamed to execute
- BpmnMessage.URL -> BpmnMessage.SYSTEM
- interface instead of superclass -> no api in constructor needed
- doExecute renamed to execute
jaboehri added 22 commits June 30, 2026 14:21
- new base resource versions
- resource version and release date are now taken from process plugin definition getters as they are read from plugin.properties by AbstractProcessPluginDefinition
- FhirWebserviceClientProvider and FhirWebserviceClient are replaced by DsfClientProvider + DsfClient for all requests to a DSF FHIR server
- FhirWebserviceClientProvider and FhirWebserviceClient are replaced by DsfClientProvider + DsfClient for all requests to a DSF FHIR server
- BpmnError replaced by ErrorBoundary event which also requires an error message to be set
- FhirWebserviceClientProvider and FhirWebserviceClient are replaced by DsfClientProvider + DsfClient for all requests to a DSF FHIR server
- Resource version is no longer a static constant in PingProcessPluginDefintion. Therefore, inject resource version from ProcessPluginDefinition instance at runtime
- As a result, PingStatusGenerator now also gets the resource version injected into the constructor instead of reading it from a static variable and requires configuration in PingConfig along any other services depending on it
- new base resource versions
- resource version and release date are now taken from process plugin definition getters as they are read from plugin.properties by AbstractProcessPluginDefinition
- Java 25
- Add dsf-bpe-process-api-v2-impl test dependency as ProcessAuthorizationHelperImpl has moved there from dsf-fhir-validation
- Add resource filtering to replace placeholders in plugin.properties
…and added a constant for error code and message when no pong target can be found
- add meta.profile to all FHIR resources
- add dsf-meta-2.0.0 StructureDefinition to validation context as the DSF ActivityDefinition profile has this profile set as the profile for ActivityDefinition.meta which needs to be validated
… to the class loader for process plugins at runtime. Therefore, shade them into the jar
…riables because JUEL cannot evaluate expressions that treat variables set by Variables#setJsonVariable as their deserialized form. For example, calling setJsonVariable(myObject) and calling ${myObject.myMethod()} in the JUEL expression will throw an exception because JUEL only sees the JsonHolder object (which holds myObject in serialized form), not the deserialized object itself
…hrows an exception like "... has fatal error in step [activity id]"
…ionalInputParameters method from the SendPingMessage implementation
…e removed. Trying to set status code to null causes a NullPointerException
…y return null which previously resulted in parsing errors in jackson
@jaboehri jaboehri added this to the 2.1.0.0 milestone Jul 7, 2026
@jaboehri jaboehri self-assigned this Jul 7, 2026
@jaboehri jaboehri added the enhancement New feature or request label Jul 7, 2026
- Copied relevant classes from source
- Updated impsort config to remove unused imports and handle unnamed variables
@jaboehri jaboehri linked an issue Jul 8, 2026 that may be closed by this pull request
jaboehri added 2 commits July 8, 2026 11:14
- Copied description from GitHub wiki page and added Markdown files in the doc directory to maven resource filtering to always generate a description with the current version (I will forget otherwise)
- Added copy-and-rename-maven-plugin to always have the current configuration generated by the DSF maven plugin in the jar file (I will forget otherwise)
- Update to Java 25
@jaboehri jaboehri linked an issue Jul 9, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add metadata markdown files Port ping-pong to DSF API v2

1 participant